home *** CD-ROM | disk | FTP | other *** search
/ Programming Languages Suite / ProgramD2.iso / Borland / Borland C++ For TASM / ALIASDOS.PAK / LIBRARY.C < prev    next >
C/C++ Source or Header  |  1996-02-21  |  2KB  |  103 lines

  1. /*
  2.    library.c
  3.  
  4.    Copyright (c) 1993 by Borland International, Inc.
  5.  
  6.    This module will become part of library.lib
  7.  
  8.    Part of the aliasdos example.
  9.  
  10.    Build using the provided makefile using: "make -B". 
  11.       
  12. */
  13.  
  14. #include <stdio.h>
  15. #include <conio.h>
  16. #include <string.h>
  17.  
  18. /* Prototypes for functions in library.lib. Compare these prototypes with
  19.    the ones in olduser.c, newuser.c and cppuser.cpp. */
  20.  
  21. void SetCoords( int x, int y );
  22. void DrawHappyFace( char c );
  23. void PrintMessage( char * WhoIsIt );
  24.  
  25. int pos_x, pos_y;
  26.  
  27. void SetCoords( int x, int y )
  28. {
  29.    pos_x = x;
  30.    pos_y = y;
  31. }
  32.  
  33. void DrawHappyFace( char c )
  34. {
  35.    int x;
  36.    char blanks[] = "                   ";
  37.  
  38.    clrscr();
  39.  
  40.       /* Draw the outline of the face. */
  41.  
  42.    gotoxy( pos_x - 5, pos_y - 7 );
  43.    for( x = 0; x < 11; x++ )
  44.       printf( "%c", c );
  45.  
  46.    for( x = 8; x >= 0; x -= 2 )
  47.    {
  48.       gotoxy( pos_x - 10 + x / 2, pos_y - 2 - x / 2 );
  49.       printf( "%c%s%c", c, &blanks[ x ], c );
  50.    }
  51.    
  52.    for( x = 0 ; x < 3; x++ )
  53.    {
  54.       gotoxy( pos_x - 10, pos_y - 1 + x );
  55.       printf( "%c%s%c", c, blanks, c );
  56.    }
  57.  
  58.    for( x = 0; x <= 8; x += 2 )
  59.    {
  60.       gotoxy( pos_x - 10 + x / 2, pos_y + 2 + x / 2 );
  61.       printf( "%c%s%c", c, &blanks[ x ], c );
  62.    }
  63.  
  64.    gotoxy( pos_x - 5, pos_y + 7 );
  65.    for( x = 0; x < 11; x++ )
  66.       printf( "%c", c );
  67.  
  68.       /* Draw the eyes, nose and mouth. */
  69.  
  70.    gotoxy( pos_x - 5, pos_y - 2 );
  71.    printf( "%c", c );
  72.    gotoxy( pos_x + 5, pos_y - 2 );
  73.    printf( "%c", c );
  74.  
  75.    gotoxy( pos_x, pos_y );
  76.    printf( "%c", c );
  77.  
  78.    for( x = 1; x <= 5; x += 2 )
  79.    {
  80.       gotoxy( pos_x - 2 - x / 2, pos_y + 4 - x / 2 );
  81.       printf( "%c%s%c", c, &blanks[ 17 - x ], c );
  82.    }
  83.    gotoxy( pos_x - 1, pos_y + 4 );
  84.    printf( "%c%c%c", c, c, c );
  85.  
  86. }
  87.  
  88. void PrintMessage( char * WhoIsIt )
  89. {
  90.    char SomeWords[100] = "Hello from the library to ";
  91.    int len;
  92.  
  93.    /* Make the final string. Size it, and print it out centered. */
  94.  
  95.    strcat( SomeWords, WhoIsIt );
  96.    len = strlen( SomeWords );
  97.    gotoxy( pos_x - len / 2, pos_y + 12 );
  98.    printf( "%s\n\n", SomeWords );
  99. }
  100.  
  101.  
  102.  
  103.